home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland C++ V5.02 / RTLWIN16.PAK / SHELLAPI.H < prev    next >
C/C++ Source or Header  |  1997-05-06  |  3KB  |  84 lines

  1. /* $Copyright: 1994$ */
  2.  
  3. /*****************************************************************************\
  4. *                                                                             *
  5. * shellapi.h -  SHELL.DLL functions, types, and definitions                   *
  6. *                                                                             *
  7. \*****************************************************************************/
  8.  
  9. #ifndef __SHELLAPI_H    /* prevent multiple includes */
  10. #define __SHELLAPI_H
  11.  
  12. #ifndef __WINDOWS_H
  13. #include <windows.h>    /* <windows.h> must be included */
  14. #endif  /* __WINDOWS_H */
  15.  
  16. #ifndef RC_INVOKED
  17. #pragma pack(push, 1)   /* Assume byte packing throughout */
  18. #endif  /* RC_INVOKED */
  19.  
  20. #ifdef __cplusplus
  21. extern "C" {            /* Assume C declarations for C++ */
  22. #endif  /* __cplusplus */
  23.  
  24. /* If included with the 3.0 windows.h, define compatible aliases */
  25. #if !defined(WINVER) || (WINVER < 0x030a)
  26. #define HDROP       HANDLE
  27. #define HINSTANCE   HANDLE
  28. #define WINAPI      FAR PASCAL
  29. #define LPCSTR      LPSTR
  30. #define UINT        WORD
  31. #else
  32. DECLARE_HANDLE(HDROP);
  33. #endif  /* WIN3.0 */
  34.  
  35. /* return codes from Registration functions */
  36. #define ERROR_SUCCESS           0L
  37. #define ERROR_BADDB             1L
  38. #define ERROR_BADKEY            2L
  39. #define ERROR_CANTOPEN          3L
  40. #define ERROR_CANTREAD          4L
  41. #define ERROR_CANTWRITE         5L
  42. #define ERROR_OUTOFMEMORY       6L
  43. #define ERROR_INVALID_PARAMETER 7L
  44. #define ERROR_ACCESS_DENIED     8L
  45.  
  46. typedef DWORD HKEY;
  47. typedef HKEY FAR* PHKEY;
  48.  
  49. LONG WINAPI RegOpenKey(HKEY, LPCSTR, HKEY FAR*);
  50. LONG WINAPI RegCreateKey(HKEY, LPCSTR, HKEY FAR*);
  51. LONG WINAPI RegCloseKey(HKEY);
  52. LONG WINAPI RegDeleteKey(HKEY, LPCSTR);
  53. LONG WINAPI RegSetValue(HKEY, LPCSTR, DWORD, LPCSTR, DWORD);
  54. LONG WINAPI RegQueryValue(HKEY, LPCSTR, LPSTR, LONG FAR*);
  55. LONG WINAPI RegEnumKey(HKEY, DWORD, LPSTR, DWORD);
  56.  
  57. UINT WINAPI DragQueryFile(HDROP, UINT, LPSTR, UINT);
  58. BOOL WINAPI DragQueryPoint(HDROP, POINT FAR*);
  59. void WINAPI DragFinish(HDROP);
  60. void WINAPI DragAcceptFiles(HWND, BOOL);
  61.  
  62. HICON WINAPI ExtractIcon(HINSTANCE hInst, LPCSTR lpszExeFileName, UINT nIconIndex);
  63.  
  64. /* error values for ShellExecute() beyond the regular WinExec() codes */
  65. #define SE_ERR_SHARE            26
  66. #define SE_ERR_ASSOCINCOMPLETE  27
  67. #define SE_ERR_DDETIMEOUT       28
  68. #define SE_ERR_DDEFAIL          29
  69. #define SE_ERR_DDEBUSY          30
  70. #define SE_ERR_NOASSOC          31
  71.  
  72. HINSTANCE WINAPI ShellExecute(HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, int iShowCmd);
  73. HINSTANCE WINAPI FindExecutable(LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult);
  74.  
  75. #ifdef __cplusplus
  76. }
  77. #endif
  78.  
  79. #ifndef RC_INVOKED
  80. #pragma pack(pop)       /* Revert to default packing */
  81. #endif  /* RC_INVOKED */
  82.  
  83. #endif  /* __SHELLAPI_H */
  84.